#ifndef __TeleInfo_H_
#define __TeleInfo_H_

#define ElementType void*
#include<stdbool.h>
#include"Info.h"

struct TeleInfo;

typedef struct TeleInfo TI; 

TI* InitTi(int capacity);//初始化函数

void InsertTail(TI*ti,ElementType element);



void PrintTi(TI*ti,void (*print)(ElementType));

IN* FindByElement(TI*ti,ElementType element,bool (*IsEqual)(void* ,void* ));

void RemoveByIndex(TI*ti,int index);

void RemoveByElement(TI*ti,ElementType element,bool (*IsEqual)(void*,void*));

void FastSort(ElementType *a,int start,int end, bool (*IsEuqal)(ElementType,ElementType));

void Sort(TI *ti,bool (*IsEuqal)(ElementType,ElementType));

void FreeTI(TI* ti,void(*Free)(ElementType));


#endif